Skip to content

全局上下文中的变量对象 ​

本节目标:理解“全局上下文中的变量对象”的核心思路,并能把它用于实际开发或面试表达。 ==全局上下文中的变量对象就是全局对象,因为它们拥有的特征太像了。== ==全局对象是预定义的对象,作为== ==JavaScript== ==的全局函数和全局属性的占位符。通过使用全局对象,可以访问所有其他所有预定义的对象、函数和属性。全局对象不是任何对象的属性,所以它没有名称。== ==在顶层== ==JavaScript== ==代码中,可以用关键字== ==this== ==引用全局对象。但通常不必用这种方式引用全局对象,因为全局对象是作用域链的头,这意味着所有非限定性的变量和函数名都会作为该对象的属性来查询。全局对象是作用域链的头,还意味着在顶层== ==JavaScript== ==代码中声明的所有变量都将成为全局对象的属性。== 全局上下文中的变量对象的特点:

全局上下文中的变量对象在执行所有代码之前创建。
全局上下文中的变量对象一直存在,直到程序结束。
全局上下文中的变量对象保存了全局上下文中所有的变量和函数声明
全局变量对象位于作用域链的顶端

==其实对照起来一看,我们就会明白为什么会说全局上下文中的变量对象就是====全局对象====了。但全局对象除了含有变量对象的特点外,它还做了其他事,那就是在初始化时会将== ==Math== ==、====String== ==、====Date====、====parseInt== ==等作为自身属性,这也是为什么我们可以访问使用这些函数和属性的原因。==

本站总访问 — 次